package org.pcorp.battlespace.modele;

import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;

@XmlRootElement(name = "capacite")
@XmlType(propOrder = {"valeurMin", "valeurMax" })
public class Capacite extends Element {
	private double valeurMin;
	private double valeurMax;
	
	public Capacite() {
		super();
	}
	
	public Capacite(long id, String nom) {
		super(id, nom);
	}
	
	public Capacite(long id, String nom, String code) {
		super(id, nom, code);
	}

	public Capacite(int id, String nom, String code, int valeurMax) {
		super(id, nom, code);
		this.valeurMin = 0;
		this.valeurMax = valeurMax;
	}

	public Capacite(int id, String nom, String code, int valeurMax, int valeurMin) {
		super(id, nom, code);
		this.valeurMin = valeurMin;
		this.valeurMax = valeurMax;
	}

	
	@Override
	public String getLabel() {
		return nom;
	}

	public double getValeurMin() {
		return valeurMin;
	}

	public void setValeurMin(double valeurMin) {
		this.valeurMin = valeurMin;
	}

	public double getValeurMax() {
		return valeurMax;
	}

	public void setValeurMax(double valeurMax) {
		this.valeurMax = valeurMax;
	}
	
	@Override
	public boolean equals(Object o) {
		if (!(o instanceof Equipement)) {
			return false;
		}
		Capacite rhs = (Capacite) o;
		return new EqualsBuilder()
		.append(id, rhs.id)
		.isEquals();
	}

	@Override
	public int hashCode() {
		return new HashCodeBuilder().   
		append(id).
		toHashCode();
	}
}
